AlphaOTT API (1.3.0)

Download OpenAPI specification:Download

Flow:

  1. Get app config
    • Use public/private url from config.json as API endpoint
  2. Login or Register to get authentication token
    • Use access_token in Authorization header
  3. Get customer
  4. Get promos by customer.services[i].type === ['LIVE_TV', 'CATCHUP_TV', 'RADIO', 'VOD', 'APPS']
  5. Get subscriptions - {private_api}/client/api/subscriptions (not described yet in Docs)
  6. Get service-provider - {public_api}/client/api/service-provider (not described yet in Docs)
  7. Get customer device limits every config.limits.interval seconds while a user watches tv/movie content (only if a feature is switched on config.limits.enabled)
  8. Get channels by customer.services[i].type === 'LIVE_TV'
  9. Get movies by customer.services[i].type === 'VOD'
  10. Update user profile
  11. Change user password

Core

App Config

Get app config

Responses

Response samples

Content type
application/json
{}

API Version

Responses

Response samples

Content type
application/json
{
  • "version": "1.1.8"
}

System Status

Responses

Response samples

Content type
application/json
{
  • "status": "OK"
}

checkCustomerDeviceLimits Deprecated

Use /client/api/customer/device/online instead of /client/api/stats/impression

Authorizations:
JWT
query Parameters
contentId
string
Example: contentId=5915c3e3201c2313ee14be2f

Content ID

contentType
string
Enum: "tv" "vod"
Example: contentType=tv

Content Type

Responses

Response samples

Content type
application/json
{
  • "status": "OK"
}

Get country list

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Cities List

query Parameters
region
string
Example: region=AL

Region ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Regions List

Responses

Response samples

Content type
application/json
[
  • {
    }
]

checkCustomerDeviceLimits

Authorizations:
JWT
query Parameters
contentId
string
Example: contentId=5915c3e3201c2313ee14be2f

Content ID

contentType
string
Enum: "tv" "vod" "tvShow" "catchUp"
Example: contentType=tv

Content Type

Responses

Response samples

Content type
application/json
{
  • "status": "OK"
}

Auth

Authentication methods for the specific device

query Parameters
device[id]
required
string (_id)
Example: device[id]=4e8e8494-ef9f-4bc1-9c65-31ef1e372f05

Device ID

device[type]
required
string (type)
Enum: "UNKNOWN" "STB" "PC" "TV" "MOBILE" "TABLET"
Example: device[type]=UNKNOWN

Device type

device[model]
required
string (model)
Example: device[model]=Gecko

Device model

device[platform]
required
string (platform)
Example: device[platform]=BROWSER

Device platform

device[brand]
required
string (brand)
Example: device[brand]=Google Inc.

Device brand

device[serial]
required
string (serial)
Example: device[serial]=23831B2EBD5BA09F

Device serial

device[mac]
required
string (mac)
Example: device[mac]=FD:8D:73:34:CF:BE:BE:56

Device mac address

Responses

Response samples

Content type
application/json
{
  • "isNew": true,
  • "authMethods": [
    ],
  • "signupMethods": [
    ]
}

User Authorization

Authorizations:
JWT
Request Body schema: application/json
One of
response_type
string
Value: "code"
response_mode
string
Default: "json"
Enum: "query" "fragment" "form_post" "json" "redirect"
client_id
string
client_secret
string
scope
string
Value: "client-api"
state
string

The state string, which service returns without making any changes. The maximum length of the string is 1024 characters. You can use it for protection from CSRF attacks or for identifying the user that a token is requested for

object (Device)

Responses

Request samples

Content type
application/json
{
  • "response_type": "code",
  • "response_mode": "query",
  • "client_id": "Ok8Bc3fsJ4Dg0dh6bDH9bd8wg1gcet",
  • "client_secret": "PodF2Bfe4D6Bfbdi4uYt6ee9DURIfy7IguIgRd",
  • "scope": "client-api",
  • "state": "xyz",
  • "device": {
    }
}

Response samples

Content type
application/json
{}

OTP Authorization

Request Body schema: application/json
One of
email
required
string <email>

"OTP_EMAIL" auth-method

client_id
required
string
client_secret
required
string
required
object (Device)

Responses

Request samples

Content type
application/json
Example
{
  • "email": "oliver.queen@mail.com",
  • "client_id": "Ok8Bc3fsJ4Dg0dh6bDH9bd8wg1gcet",
  • "client_secret": "PodF2Bfe4D6Bfbdi4uYt6ee9DURIfy7IguIgRd",
  • "device": {
    }
}

Response samples

Content type
application/json
{
  • "access_token": "TMWo0FsAENON0JA8AIlkn37FJMwj3uAa",
  • "token_type": "OTP",
  • "expires_in": "2021-04-26T13:36:51.380Z",
  • "remain_resend": 2,
  • "remain_attempt": 3
}

Authorization Token Exchange

Request Body schema: application/json
One of
grant_type
string
Value: "password"
password
string <password>
username
string <email>
client_id
string
client_secret
string
object (Device)

Responses

Request samples

Content type
application/json
Example
{
  • "grant_type": "password",
  • "password": "password",
  • "username": "example@mail.com",
  • "client_id": "Ok8Bc3fsJ4Dg0dh6bDH9bd8wg1gcet",
  • "client_secret": "PodF2Bfe4D6Bfbdi4uYt6ee9DURIfy7IguIgRd",
  • "device": {
    }
}

Response samples

Content type
application/json
{
  • "expires_in": 300,
  • "token_type": "JWT",
  • "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJjbGllbnRfaXAiOiI6OjEiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6ImFjY2Vzc190b2tlbiIsImlhdCI6MTU0Mjc3OTkzNywiZXhwIjoxNTQyNzgwMjM3LCJhdWQiOiJ6YWFwdHYiLCJpc3MiOiJjbG91ZGFudGVubmUuY2giLCJzdWIiOiI1YmY0ZjQyMWY3MTZjZjJiZTk1NzE1MDkiLCJqdGkiOiJOWjJUSUNMWUpIMTRBSEtuIn0.iqVLPtqkpQTV9l93y6GGwN7KfNMc86smhg3Ol9MHt2g",
  • "refresh_token": "JWT:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6InJlZnJlc2hfdG9rZW4iLCJpYXQiOjE1NDI3Nzk5MzcsImV4cCI6MTU0MzM4NDczNywiYXVkIjoiemFhcHR2IiwiaXNzIjoiY2xvdWRhbnRlbm5lLmNoIiwic3ViIjoiNWJmNGY0MjFmNzE2Y2YyYmU5NTcxNTA5IiwianRpIjoiTloyVElDTFlKSDE0QUhLbiJ9.VUs5sxSd1c49lxA00tA4dPPMmIlrfLx9Qh38CY6qeY0",
  • "id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJjbGllbnRfaXAiOiI6OjEiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6ImFjY2Vzc190b2tlbiIsImlhdCI6MTU0Mjc3OTkzNywiZXhwIjoxNTQyNzgwMjM3LCJhdWQiOiJ6YWFwdHYiLCJpc3MiOiJjbG91ZGFudGVubmUuY2giLCJzdWIiOiI1YmY0ZjQyMWY3MTZjZjJiZTk1NzE1MDkiLCJqdGkiOiJOWjJUSUNMWUpIMTRBSEtuIn0.iqVLPtqkpQTV9l93y6GGwN7KfNMc86smhg3Ol9MHt2g"
}

Sign up

Request Body schema: application/json
password
string <password>

Clients should confirm password on their side

email
string <email>
client_id
string
client_secret
string
object (Device)

Responses

Request samples

Content type
application/json
{
  • "password": "password",
  • "email": "oliver.queen@mail.com",
  • "client_id": "Ok8Bc3fsJ4Dg0dh6bDH9bd8wg1gcet",
  • "client_secret": "PodF2Bfe4D6Bfbdi4uYt6ee9DURIfy7IguIgRd",
  • "device": {
    }
}

Response samples

Content type
application/json
{
  • "expires_in": 300,
  • "token_type": "JWT",
  • "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJjbGllbnRfaXAiOiI6OjEiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6ImFjY2Vzc190b2tlbiIsImlhdCI6MTU0Mjc3OTkzNywiZXhwIjoxNTQyNzgwMjM3LCJhdWQiOiJ6YWFwdHYiLCJpc3MiOiJjbG91ZGFudGVubmUuY2giLCJzdWIiOiI1YmY0ZjQyMWY3MTZjZjJiZTk1NzE1MDkiLCJqdGkiOiJOWjJUSUNMWUpIMTRBSEtuIn0.iqVLPtqkpQTV9l93y6GGwN7KfNMc86smhg3Ol9MHt2g",
  • "refresh_token": "JWT:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6InJlZnJlc2hfdG9rZW4iLCJpYXQiOjE1NDI3Nzk5MzcsImV4cCI6MTU0MzM4NDczNywiYXVkIjoiemFhcHR2IiwiaXNzIjoiY2xvdWRhbnRlbm5lLmNoIiwic3ViIjoiNWJmNGY0MjFmNzE2Y2YyYmU5NTcxNTA5IiwianRpIjoiTloyVElDTFlKSDE0QUhLbiJ9.VUs5sxSd1c49lxA00tA4dPPMmIlrfLx9Qh38CY6qeY0",
  • "id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJjbGllbnRfaXAiOiI6OjEiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6ImFjY2Vzc190b2tlbiIsImlhdCI6MTU0Mjc3OTkzNywiZXhwIjoxNTQyNzgwMjM3LCJhdWQiOiJ6YWFwdHYiLCJpc3MiOiJjbG91ZGFudGVubmUuY2giLCJzdWIiOiI1YmY0ZjQyMWY3MTZjZjJiZTk1NzE1MDkiLCJqdGkiOiJOWjJUSUNMWUpIMTRBSEtuIn0.iqVLPtqkpQTV9l93y6GGwN7KfNMc86smhg3Ol9MHt2g"
}

Sign up with OTP

Request Body schema: application/json
password
string <password>

Clients should confirm password on their side

email
string <email>
client_id
string
client_secret
string
firstName
string
lastName
string
middleName
string
prefix
string
suffix
string
phones
Array of strings
object (Device)
object (Address)
object (Address)

Responses

Request samples

Content type
application/json
{
  • "password": "password",
  • "email": "oliver.queen@mail.com",
  • "client_id": "Ok8Bc3fsJ4Dg0dh6bDH9bd8wg1gcet",
  • "client_secret": "PodF2Bfe4D6Bfbdi4uYt6ee9DURIfy7IguIgRd",
  • "firstName": "John",
  • "lastName": "Smith",
  • "middleName": "Oliver",
  • "prefix": "Mr",
  • "suffix": "",
  • "phones": [
    ],
  • "device": {
    },
  • "address": {
    },
  • "billingAddress": {
    }
}

Response samples

Content type
application/json
{
  • "expires_in": 300,
  • "token_type": "JWT",
  • "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJjbGllbnRfaXAiOiI6OjEiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6ImFjY2Vzc190b2tlbiIsImlhdCI6MTU0Mjc3OTkzNywiZXhwIjoxNTQyNzgwMjM3LCJhdWQiOiJ6YWFwdHYiLCJpc3MiOiJjbG91ZGFudGVubmUuY2giLCJzdWIiOiI1YmY0ZjQyMWY3MTZjZjJiZTk1NzE1MDkiLCJqdGkiOiJOWjJUSUNMWUpIMTRBSEtuIn0.iqVLPtqkpQTV9l93y6GGwN7KfNMc86smhg3Ol9MHt2g",
  • "refresh_token": "JWT:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6InJlZnJlc2hfdG9rZW4iLCJpYXQiOjE1NDI3Nzk5MzcsImV4cCI6MTU0MzM4NDczNywiYXVkIjoiemFhcHR2IiwiaXNzIjoiY2xvdWRhbnRlbm5lLmNoIiwic3ViIjoiNWJmNGY0MjFmNzE2Y2YyYmU5NTcxNTA5IiwianRpIjoiTloyVElDTFlKSDE0QUhLbiJ9.VUs5sxSd1c49lxA00tA4dPPMmIlrfLx9Qh38CY6qeY0",
  • "id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjbGllbnRfaWQiOiJPazhCYzNmc0o0RGcwZGg2YkRIOWJkOHdnMWdjZXQiLCJjbGllbnRfaXAiOiI6OjEiLCJkZXZpY2UiOnsiX2lkIjoiNGU4ZTg0OTQtZWY5Zi00YmMxLTljNjUtMzFlZjFlMzcyZjA1IiwidHlwZSI6IlVOS05PV04iLCJwbGF0Zm9ybSI6IkJST1dTRVIiLCJzZXJpYWwiOiJEQTA5NEI5NTA2MDhEOEJBIiwibWFjIjoiODI6OTA6QTg6NTk6RDI6QjE6QzA6NzYifSwiZ3JhbnRfc2NvcGUiOiJjbGllbnQtYXBpIiwiZ3JhbnRfdHlwZSI6ImFjY2Vzc190b2tlbiIsImlhdCI6MTU0Mjc3OTkzNywiZXhwIjoxNTQyNzgwMjM3LCJhdWQiOiJ6YWFwdHYiLCJpc3MiOiJjbG91ZGFudGVubmUuY2giLCJzdWIiOiI1YmY0ZjQyMWY3MTZjZjJiZTk1NzE1MDkiLCJqdGkiOiJOWjJUSUNMWUpIMTRBSEtuIn0.iqVLPtqkpQTV9l93y6GGwN7KfNMc86smhg3Ol9MHt2g"
}

Sign up activate

path Parameters
Token
required
string
Example: InOGX3kLDTVUZHLL5Ep5tiHIb9SA7XtO

Token

Responses

Response samples

Content type
application/json
{
  • "status": "OK"
}

Re-send Activation Email

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "username@example.com"
}

Response samples

Content type
application/json
{
  • "status": "OK"
}

Reset password

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "oliver.queen@mail.com"
}

Response samples

Content type
application/json
{
  • "status": "OK"
}

Reset password activation

path Parameters
Token
required
string
Example: InOGX3kLDTVUZHLL5Ep5tiHIb9SA7XtO

Token

Request Body schema: application/json
password
required
string >= 6
confirmPassword
required
string >= 6

Responses

Request samples

Content type
application/json
{
  • "password": "password",
  • "confirmPassword": "password"
}

Response samples

Content type
application/json
{
  • "message": "Password has been successfully changed"
}

Customer

Customer

Authorizations:
JWT

Responses

Response samples

Content type
application/json
{
  • "_id": "5915c3bacc8e1e13969de081",
  • "title": "",
  • "firstName": "Oliver",
  • "lastName": "Queen",
  • "middleName": "",
  • "prefix": "Mr",
  • "suffix": "Sr",
  • "activated": "2017-05-12T14:16:27.134Z",
  • "created": "2017-05-12T14:16:27.134Z",
  • "email": "oliver@queen.com",
  • "serviceProvider": "alphaott",
  • "location": {
    },
  • "billingAddress": {
    },
  • "address": {
    },
  • "phones": [
    ],
  • "services": [
    ]
}

Update Customer Profile

Authorizations:
JWT
Request Body schema: application/json
title
string
firstName
string
lastName
string
middleName
string
prefix
string
suffix
string
object (address_Address)
object (address_Address)

Responses

Request samples

Content type
application/json
{
  • "title": "",
  • "firstName": "Oliver",
  • "lastName": "Queen",
  • "middleName": "",
  • "prefix": "Mr",
  • "suffix": "Sr",
  • "billingAddress": {
    },
  • "address": {
    }
}

Response samples

Content type
application/json
{
  • "_id": "5915c3bacc8e1e13969de081",
  • "title": "",
  • "firstName": "Oliver",
  • "lastName": "Queen",
  • "middleName": "",
  • "prefix": "Mr",
  • "suffix": "Sr",
  • "activated": "2017-05-12T14:16:27.134Z",
  • "created": "2017-05-12T14:16:27.134Z",
  • "email": "oliver@queen.com",
  • "serviceProvider": "alphaott",
  • "location": {
    },
  • "billingAddress": {
    },
  • "address": {
    },
  • "phones": [
    ],
  • "services": [
    ]
}

Deactivate Customer

Authorizations:
JWT

Responses

Response samples

Content type
application/json
{
  • "status": "OK"
}

Change Customer Password

Authorizations:
JWT
Request Body schema: application/json
oldPassword
required
string
newPassword
required
string
confirmPassword
required
string

Responses

Request samples

Content type
application/json
{
  • "oldPassword": "old_password",
  • "newPassword": "new_password",
  • "confirmPassword": "new_password"
}

Response samples

Content type
application/json
{
  • "message": "Password has been successfully changed"
}

Get Personal List By List Type

Authorizations:
JWT
path Parameters
profileId
required
string
Example: 59e5b5c4a95efa0001e28e2d

Profile ID

contentType
required
string
Example: MOVIE

Content type

listType
required
string
Example: RECORDINGS

List type

query Parameters
populate
number
Example: populate=1

Populate

sort
string
Default: "-ts"
Example: sort=ts

Sort

from
timestamp
Example: from=1604679949

From

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete Personal List By List Type

Authorizations:
JWT
path Parameters
profileId
required
string
Example: 59e5b5c4a95efa0001e28e2d

Profile ID

contentType
required
string
Example: MOVIE

Content type

listType
required
string
Example: RECORDINGS

List type

Responses

Response samples

Content type
application/json
{
  • "status": "DELETED"
}

Get Personal List By Content Type

Authorizations:
JWT
path Parameters
profileId
required
string
Example: 59e5b5c4a95efa0001e28e2d

Profile ID

contentType
required
string
Example: MOVIE

Content type

query Parameters
populate
number
Example: populate=1

Populate

sort
string
Default: "-ts"
Example: sort=ts

Sort

populate
timestamp
Example: populate=1604679949

from

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all personal lists for specific customer profile

Authorizations:
JWT
path Parameters
profileId
required
string
Example: 59e5b5c4a95efa0001e28e2d

Profile ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete Personal List By Profile

Authorizations:
JWT
path Parameters
profileId
required
string
Example: 59e5b5c4a95efa0001e28e2d

Profile ID

Responses

Response samples

Content type
application/json
{
  • "status": "DELETED"
}

Delete Personal List By Content

Authorizations:
JWT
path Parameters
profileId
required
string
Example: 59e5b5c4a95efa0001e28e2d

Profile ID

contentType
required
string
Example: MOVIE

Content type

listType
required
string
Example: RECORDINGS

List type

contentId
required
string
Example: 59e5b5c4a95efa0001e28e2d

List type

Responses

Response samples

Content type
application/json
{
  • "status": "DELETED"
}

Insert/Update Personal List

Authorizations:
JWT
path Parameters
profileId
required
string
Example: 59e5b5c4a95efa0001e28e2d

Profile ID

contentType
required
string
Example: MOVIE

Content type

listType
required
string
Example: RECORDINGS

List type

contentId
required
string
Example: 59e5b5c4a95efa0001e28e2d

List type

Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "item": "5915c3dbfc819813c4c244cf",
  • "customer": "5915c3dbfc819813c4c244cf",
  • "type": "MOVIE",
  • "list": "RECORDINGS",
  • "ts": "2020-11-09T14:36:44.913Z",
  • "data": { }
}

Get Customer Devices

Authorizations:
JWT

Responses

Response samples

Content type
application/json
[
  • {
    }
]

checkCustomerDeviceLimits

Authorizations:
JWT
query Parameters
contentId
string
Example: contentId=5915c3e3201c2313ee14be2f

Content ID

contentType
string
Enum: "tv" "vod" "tvShow" "catchUp"
Example: contentType=tv

Content Type

Responses

Response samples

Content type
application/json
{
  • "status": "OK"
}

Delete Customer Device

Authorizations:
JWT
path Parameters
deviceId
required
string
Example: 4e8e8494-ef9f-4bc1-9c65-31ef1e372f05

Device ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Activate Voucher Code

Authorizations:
JWT
Request Body schema: application/json
code
required
string

Responses

Request samples

Content type
application/json
{
  • "code": "38GG-61IW-UQU8-XYKX"
}

Response samples

Content type
application/json
{
  • "_id": "38GG61IWUQU8XYKX",
  • "code": "38GG-61IW-UQU8-XYKX",
  • "type": "ACTIVATION",
  • "status": "ACTIVE",
  • "serviceProvider": "ZaapTV™",
  • "voucherGroup": "test voucher"
}

Channels

Returns a list of channels

Examples:

  • projection is default: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/channels
  • projection is brief: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/channels?brief

Responses

Request samples

import { getChannelsBrief } from 'api-client/channels'
const channels = await getChannelsBrief(serviceSpecId)

Response samples

Content type
application/json
[
  • {
    }
]

Channel Categories

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Channel Countries

Examples:

  • Default: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/countries
  • Posters: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/countries?posters
  • Cards: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/countries?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Channel Genres

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Channel Languages

Examples:

  • Default: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/languages
  • Posters: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/languages?posters
  • Cards: /client/api/servicespec/59e5b2e2a95efa0001e26ee3/tv/languages?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Returns a channel/channels by ID or IDs

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Channel Source Deprecated

Authorizations:
JWT
Request Body schema: application/json
id
required
string >= 1

Channel ID or list of ids 5915c3e3201c2313ee14be2f,592672a1b7fb245a4e417c0b

Responses

Request samples

Content type
application/json
{
  • "id": "5915c3e3201c2313ee14be2f"
}

Response samples

Content type
application/json

Channel Ad Source Deprecated

Authorizations:
JWT
Request Body schema: application/json
id
required
string >= 1

Channel ID or list of ids 5915c3e3201c2313ee14be2f,592672a1b7fb245a4e417c0b

Responses

Request samples

Content type
application/json
{
  • "id": "5915c3e3201c2313ee14be2f"
}

Channel Source V3

Authorizations:
JWT
Request Body schema: application/json
id
required
string >= 1

Channel ID or list of ids 5915c3e3201c2313ee14be2f,592672a1b7fb245a4e417c0b

Responses

Request samples

Content type
application/json
{
  • "id": "5915c3e3201c2313ee14be2f"
}

Response samples

Content type
application/json
{
  • "5915c3e3201c2313ee14be2f": [
    ]
}

TV program list

Examples:

  • get a Program list for 2019-02-20: /client/api/tv/channel/5915c3b1cc8e1e13969dcfa9/programs?date=2019-02-20
  • get a Program list from 2019-02-20 to 2019-02-22 inclusively: /client/api/tv/channel/5915c3b1cc8e1e13969dcfa9/programs?start=2019-02-20&end=2019-02-22
  • get a Program list for 2019-02-20 with timezone=360 & includeStop=true: /client/api/tv/channel/5915c3b1cc8e1e13969dcfa9/programs?date=2019-02-20&timezoneOffset=360&includeStop

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TV program list V2

Examples:

  • get a Program list for 2019-02-20: /client/api/v2/tv/channel/5915c3b1cc8e1e13969dcfa9/programs?date=2019-02-20
  • get a Program list from 2019-02-20 to 2019-02-22 inclusively: /client/api/v2/tv/channel/5915c3b1cc8e1e13969dcfa9/programs?start=2019-02-20&end=2019-02-22
  • get a Program list for 2019-02-20 with timezone=360 & includeStop=true: /client/api/v2/tv/channel/5915c3b1cc8e1e13969dcfa9/programs?date=2019-02-20&timezoneOffset=360&includeStop

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TV program

Responses

Response samples

Content type
application/json
{
  • "id": "id",
  • "title": "some title",
  • "description": "some description",
  • "credits": "some credits",
  • "episode": "some episode",
  • "start": "2017-05-12T14:16:27.134Z",
  • "stop": "2017-05-12T16:16:27.134Z"
}

TV program V2

Responses

Response samples

Content type
application/json
{
  • "id": "id",
  • "title": "some title",
  • "subtitle": "some subtitle",
  • "description": "some description",
  • "credits": [
    ],
  • "categories": [
    ],
  • "episode": "some episode",
  • "start": "2017-05-12T14:16:27.134Z",
  • "stop": "2017-05-12T16:16:27.134Z"
}

TV channels with program list

Examples:

  • get a Program list for 2019-02-20: /client/api/servicespec/5915c39b1d6d2f134d69af51/tv/programs?date=2019-02-20
  • get a Program list from 2019-02-20 to 2019-02-22 inclusively: /client/api/servicespec/5915c39b1d6d2f134d69af51/tv/programs?start=2019-02-20&end=2019-02-22
  • get a Program list for 2019-02-20 with timezone=360 & includeStop=true: /client/api/servicespec/5915c39b1d6d2f134d69af51/tv/programs?date=2019-02-20&timezoneOffset=360&includeStop

Responses

Response samples

Content type
application/json
{
  • "5915c3e3201c2313ee14be2f": [
    ]
}

TV channels with program list V2

Examples:

  • get a Program list for 2019-02-20: /client/api/v2/servicespec/5915c39b1d6d2f134d69af51/tv/programs?date=2019-02-20
  • get a Program list from 2019-02-20 to 2019-02-22 inclusively: /client/api/v2/servicespec/5915c39b1d6d2f134d69af51/tv/programs?start=2019-02-20&end=2019-02-22
  • get a Program list for 2019-02-20 with timezone=360 & includeStop=true: /client/api/v2/servicespec/5915c39b1d6d2f134d69af51/tv/programs?date=2019-02-20&timezoneOffset=360&includeStop

Responses

Response samples

Content type
application/json
{
  • "5915c3e3201c2313ee14be2f": [
    ]
}

CatchUp

CatchUp Channels

Responses

Response samples

Content type
application/json
{
  • "5915c3e3201c2313ee14be2f": {
    },
  • "5915c3bacc8e1e13969de081": {
    },
  • "5915c3a7cc8e1e13969dc308": {
    },
  • "5915c37c1d6d2f134d697eda": {
    },
  • "5915c3a0cc8e1e13969db991": {
    },
  • "5915c3cafc819813c4c2285b": {
    },
  • "5915c3a7cc8e1e13969dc309": {
    }
}

CatchUp Channel Source

Authorizations:
JWT

Responses

Response samples

Content type
application/json
[
  • {
    }
]

NPVR

NPVR Channels

Responses

Response samples

Content type
application/json
{
  • "5915c3e3201c2313ee14be2f": {
    },
  • "5915c3bacc8e1e13969de081": {
    },
  • "5915c3a7cc8e1e13969dc308": {
    },
  • "5915c37c1d6d2f134d697eda": {
    },
  • "5915c3a0cc8e1e13969db991": {
    },
  • "5915c3cafc819813c4c2285b": {
    },
  • "5915c3a7cc8e1e13969dc309": {
    }
}

NPVR Channel Source

Authorizations:
JWT

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Movies

Returns a list of movies

Examples:

  • Brief & sort by rating & limit 20: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movies?brief&sort=-rating&limit=20
  • projection is default: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movies
  • projection is brief: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movies?brief
  • Search by title: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movies?title=/ARAB/i&sort=-rating
  • Pages:
    • First 50: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movies
    • 50-100: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movies?skip=50
query Parameters
title
string
Example: title=/usa/i

Search by title (regular expression)

plot
string
Example: plot=/story of Alf Mabrook/i

Search by plot (regular expression)

year
integer
Example: year=2009

Search by year

languages
string
Example: languages=5915c3941d6d2f134d699da3

Search by language ID

countries
string
Example: countries=5915c3941d6d2f134d699da3

Search by country ID

genres
string
Example: genres=5915c3941d6d2f134d699da3

Search by genre ID

categories
string
Example: categories=5915c3941d6d2f134d699da3

Search by category ID

studios
string
Example: studios=2009

TODO: fixme Search by studios (mongodb query)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Returns a movie by ID

Responses

Response samples

Content type
application/json
Example
{
  • "_id": "5915c3bacc8e1e13969de081",
  • "title": "Alf Mabrook",
  • "plot": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "plotSimple": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "year": 2009,
  • "rating": 0.800000011920929,
  • "mpaaRating": "G",
  • "producers": [
    ],
  • "directors": [
    ],
  • "cast": [
    ],
  • "posters": [
    ],
  • "backgrounds": [
    ],
  • "genres": [
    ],
  • "categories": [
    ],
  • "countries": [
    ],
  • "languages": [
    ]
}

Returns a movie by ID or IDs

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Movie Source V1 Deprecated

Authorizations:
JWT

Responses

Movie Source V3

Authorizations:
JWT

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Movie Trailer V1 Deprecated

Authorizations:
JWT

Responses

Response samples

Content type
application/json

Movie Trailer v3

Authorizations:
JWT

Responses

Response samples

Content type
application/json
{}

Movie Related

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Movie Categories

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Movie Languages

Examples:

  • Default: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movie/languages
  • Posters: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movie/languages?posters
  • Cards: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/movie/languages?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Movie Genres

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Movie Countries

Examples:

  • Default: /client/api/servicespec/5915c39c1d6d2f134d69afb1/movie/countries
  • Posters: /client/api/servicespec/5915c39c1d6d2f134d69afb1/movie/countries?posters
  • Cards: /client/api/servicespec/5915c39c1d6d2f134d69afb1/movie/countries?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TvShows

Returns a list of tv shows

Examples:

  • Sort by rating & limit 20: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/tv-shows?sort=-rating&limit=20
  • Search by title: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/tv-shows?title=/ARAB/i&sort=-rating
  • Pages:
    • First 50: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/tv-shows
    • 50-100: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/tv-shows?skip=50
query Parameters
title
string
Example: title=/usa/i

Search by title (regular expression)

plot
string
Example: plot=/story of Alf Mabrook/i

Search by plot (regular expression)

year
integer
Example: year=2009

Search by year

languages
string
Example: languages=5915c3941d6d2f134d699da3

Search by language ID

countries
string
Example: countries=5915c3941d6d2f134d699da3

Search by country ID

genres
string
Example: genres=5915c3941d6d2f134d699da3

Search by genre ID

categories
string
Example: categories=5915c3941d6d2f134d699da3

Search by category ID

studios
string
Example: studios=2009

TODO: fixme Search by studios (mongodb query)

expand
boolean
Default: false
Example: expand=true

Add seasons/episodes to response

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Returns a TV Show by ID

Responses

Response samples

Content type
application/json
{
  • "_id": "5915c3bacc8e1e13969de081",
  • "type": "TV_SHOW",
  • "title": "Alf Mabrook",
  • "plot": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "plotSimple": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "year": 2009,
  • "rating": 0.800000011920929,
  • "mpaaRating": "G",
  • "producers": [
    ],
  • "directors": [
    ],
  • "screenshots": [
    ],
  • "trailers": [
    ],
  • "cast": [
    ],
  • "genres": [
    ],
  • "categories": [
    ],
  • "countries": [
    ],
  • "languages": [
    ],
  • "seasons": [
    ]
}

Returns a TV Show by ID or IDs

query Parameters
expand
boolean
Default: false
Example: expand=true

Add episodes to response

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Returns a Season by ID

Responses

Response samples

Content type
application/json
{
  • "_id": "5915c3bacc8e1e13969de081",
  • "type": "TV_SHOW_SEASON",
  • "title": "Alf Mabrook",
  • "plot": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "plotSimple": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "year": 2009,
  • "rating": 0.800000011920929,
  • "mpaaRating": "G",
  • "producers": [
    ],
  • "directors": [
    ],
  • "screenshots": [
    ],
  • "trailers": [
    ],
  • "cast": [
    ],
  • "genres": [
    ],
  • "categories": [
    ],
  • "countries": [
    ],
  • "languages": [
    ],
  • "episodes": [
    ]
}

Returns an Episode by ID

Responses

Response samples

Content type
application/json
{
  • "_id": "5915c3bacc8e1e13969de081",
  • "type": "TV_SHOW_EPISODE",
  • "title": "Alf Mabrook",
  • "plot": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "plotSimple": "The story of Alf Mabrook is adapted from the American comedy “Groundhog Day” which presents a comic scenario in a fantasy-filled context. The protagonist (Ahmad Helmi) finds himself in a bizarre situation where he wakes up every day to relive the same events over and over. Thus our hero finds himself stuck in a cycle without any apparent exit.",
  • "year": 2009,
  • "rating": 0.800000011920929,
  • "mpaaRating": "G",
  • "producers": [
    ],
  • "directors": [
    ],
  • "screenshots": [
    ],
  • "trailers": [
    ],
  • "cast": [
    ],
  • "genres": [
    ],
  • "categories": [
    ],
  • "countries": [
    ],
  • "languages": [
    ],
  • "parent": {
    }
}

TV Show Source V3

Authorizations:
JWT

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Tv Show Trailer v3

Authorizations:
JWT

Responses

Response samples

Content type
application/json
{}

Tv Show / Season Trailer v3

Authorizations:
JWT

Responses

Response samples

Content type
application/json
{}

Tv Show / Episode Trailer v3

Authorizations:
JWT

Responses

Response samples

Content type
application/json
{}

TV Show Related

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TV Show Categories

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TV Show Languages

Examples:

  • Default: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/tv-show/languages
  • Posters: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/tv-show/languages?posters
  • Cards: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/tv-show/languages?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TV Show Genres

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TV Show Countries

Examples:

  • Default: /client/api/servicespec/5915c39c1d6d2f134d69afb1/tv-show/countries
  • Posters: /client/api/servicespec/5915c39c1d6d2f134d69afb1/tv-show/countries?posters
  • Cards: /client/api/servicespec/5915c39c1d6d2f134d69afb1/tv-show/countries?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Tutorials

Returns Tutorials

Responses

Response samples

Content type
application/json
{
  • "_id": "5915c3bacc8e1e13969de081",
  • "title": "Tutorial",
  • "tags": [
    ],
  • "languages": [
    ]
}

Tutorial Source

Authorizations:
JWT

Responses

Response samples

Content type
application/json
[]

Radio

Returns a list of radio

Examples:

  • Brief & sort by rating & limit 20: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio?brief&sort=-rating&limit=20
  • projection is default: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio
  • projection is brief: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio?brief
  • Search by title: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio?title=/ARAB/i&sort=-rating
  • Pages:
    • First 50: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio
    • 50-100: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio?skip=50
query Parameters
title
string
Example: title=/usa/i

Search by title (regular expression)

plot
string
Example: plot=/story of Alf Mabrook/i

Search by plot (regular expression)

year
integer
Example: year=2009

Search by year

languages
string
Example: languages=5915c3941d6d2f134d699da3

Search by language ID

countries
string
Example: countries=5915c3941d6d2f134d699da3

Search by country ID

genres
string
Example: genres=5915c3941d6d2f134d699da3

Search by genre ID

categories
string
Example: categories=5915c3941d6d2f134d699da3

Search by category ID

studios
string
Example: studios=2009

TODO: fixme Search by studios (mongodb query)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Radio Source V3

Authorizations:
JWT

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Radio Categories

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Radio Languages

Examples:

  • Default: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio/languages
  • Posters: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio/languages?posters
  • Cards: /client/api/servicespec/59e5b5c4a95efa0001e28e2d/radio/languages?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Radio Genres

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Radio Countries

Examples:

  • Default: /client/api/servicespec/5915c39c1d6d2f134d69afb1/radio/countries
  • Posters: /client/api/servicespec/5915c39c1d6d2f134d69afb1/radio/countries?posters
  • Cards: /client/api/servicespec/5915c39c1d6d2f134d69afb1/radio/countries?cards

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Promos

Returns promos for `STB` Device type Deprecated

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Returns promos for certain Device type

Examples:

  • Sort by contentType & deviceType: /client/api/v2/servicespec/5d1daa05dd849c0001419008/promos?deviceType=UNKNOWN&contentType=TV_SHOW,RADIO
  • Sort by deviceType: /client/api/v2/servicespec/5d1daa05dd849c0001419008/promos?deviceType=UNKNOWN

Summary about ContentType:

  • if there is NO query param contentType , everything will works as usual
  • if there is query param contentType:
    • ALL - returns all banners with non-empty contentType field
    • TV_SHOW, APP, MOVIE, RADIO, TV - returns filtered banners

Note: queries contentType=ALL,TV && contentType=ALL returns the same result

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Subscriptions

Cancel a subscription

Authorizations:
JWT
path Parameters
subscriptionId
required
string
Example: 5d420595405267002f72d833

Subscription ID

query Parameters
cancelAtEnd
boolean
Default: true

Your subscription can be either cancelled immediately or at the end of the current term based on the value of cancelAtEnd.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "Your subscription will be canceled at the end of this term."
}